Method of fuel injection

ABSTRACT

A method of operating an internal combustion engine. With reference to FIG.  1 , fuel is supplied to charge air using an injector ( 116 ) which in each operation delivers a set amount of fuel. The amount of fuel supplied to the charge air in each engine cycle is controlled by how many times the injector ( 116 ) operates in each cycle. A desired fuel demand is calculated as a number of operations of the injector per cycle, calculated to at least one decimal place. The desired fuel demand is rounded to a near integer to provide an output fuel demand for the injector as a number of operations of the injector for the next operating cycle in varying operating conditions of the engine. The controller calculates an aggregate number of operations for a plurality of engine cycles which is closer to an aggregated desired fuel demand for the plurality of cycles than if for each cycle of the plurality of output cycles the output fuel demand is calculated independently.

CROSS-REFERENCE-TO-RELATED-APPLICATION

This is a continuation-in-part of U.S. application Ser. No. 12/038,915filed Feb. 28, 2008, and entitled A METHOD OF FUEL INJECTION, (Allowed),which claims priority to United Kingdom Application No. GB0703880.5,filed Feb. 28, 2007, and entitled A METHOD OF FUEL INJECTION, (issued aspatent GB 2 447 045), each incorporated herein by reference in itsentirety.

FIELD

This invention relates to a method of fuel injection for an internalcombustion engine and to a fuel injection system or a fuel injectionunit for implementing the method.

BACKGROUND

Most internal combustion engines in automobiles currently use fuelinjection systems to supply fuel to the combustion chambers of theengine. Fuel injection systems have replaced the earlier technology ofcarburetors because they give better control of the delivery of fuel andenable the engine to meet emission legislation targets as well asimproving overall efficiency.

It is important that the fuel injection system delivers an appropriateamount of fuel at an appropriate time. Inappropriate delivery of thefuel may lead to a reduction in the output power of the engine and awastage of fuel.

Whilst the sophisticated and highly developed fuel injection systemscurrently available (as described above) are ideal for use in internalcombustion engines in automobiles, there are many other applications forinternal combustion engines where such a level of sophistication is notappropriate and too costly. For instance, small single cylinder enginesas used for a variety of engine powered gardening devices (such as lawnmowers, hedge trimmers, chain saws, rotovators, lawn aerators,scarifiers and shredders), small generators, mopeds, scooters, etc. arebuilt to very tight cost targets and therefore cannot afford the cost ofa sophisticated fuel injection system. To date, such small engines haveused traditional cheaper carburetor technology. However, small enginesof this type will soon face the same kind of exhaust gas emissionlegislation as automobile engines and so must be modified to meet theemission targets. Therefore, a cheap and simple system of fuel injectionis required for such small engines.

In GB 2425188 the applicant described a fuel injection unit suitable fora small engine. The injector described injects in each operation a setamount of fuel into the charge air; the controller of the unit decidedin each engine cycle how much fuel was needed and then operated theinjector a number of times to come closest to the ideal amount of fuel.Since the amount of fuel can only be controlled in steps equivalent tothe volume dispensed by the injector, the control was quite coarse. Theengine could be over-fuelled or under-fuelled.

SUMMARY

According to a first aspect of the invention, there is provided a methodof operating an internal combustion engine. In a preferred embodiment,the method includes the steps of supplying fuel to charge air using aninjector which in each operation delivers a set amount of fuel;controlling how much fuel is supplied to the charge air in each enginecycle by controlling how many times the injector operates in each enginecycle; determining from engine speed and load a desired fuel demand as anumber of operations of the injector calculated to at least one decimalplace; rounding the desired fuel demand to a near integer to provide anoutput fuel demand for the injector as a number of operations of theinjector for the next operating cycle; and calculating an aggregatedfuel demand for a plurality of engine cycles and when the calculationaggregated fuel demand is not equal to an aggregated number ofoperations of the injector if for each cycle of the plurality of cyclesthe output fuel demand is calculated independently then controlling theoutput fuel demands sent to the injector over the plurality of cycles tooperate the injector an aggregate number of operations closer to thecalculated aggregated desired fuel demand for the plurality of cyclesthan if for each cycle of the plurality of output cycles the output fueldemand is calculated independently.

According to a second aspect of the invention, there is provided amethod of operating an internal combustion engine including the stepsof: supplying fuel to charge air using an injector which in eachoperation delivers a set amount of fuel; controlling how much fuel issupplied to the charge air in each engine cycle by controlling how manytimes the injector operates in each engine cycle; the method havingfirst and second fuel demand calculation routines including: a firstfuel demand calculation routine in which a desired fuel demand isdetermined with reference to engine speed and load for each engine cycleindividually as a number of operations of the injector calculated to atleast one decimal place and the desired fuel demand is rounded to a nearinteger to provide an output fuel demand as a number of operations ofthe injector for the next engine cycle; and a second fuel calculationroutine in which a desired fuel demand is determined with reference toengine speed and load for a plurality of engine cycles as an aggregatenumber of operations of the injector over the plurality of the operatingcycles and the injector is controlled over the plurality of enginecycles to achieve the desired fuel demand with the number of operationsin at least one engine cycle of the plurality differing from the numberof operations in other engine cycles of the plurality.

According to a third aspect of the invention, there is provided a methodof operating an internal combustion engine including the steps of:supplying fuel to charge air using an injector which in each operationdelivers a set amount of fuel; varying fuel supply by varying the numberof operations of the injector in each engine cycle; calculating adesired aggregate number of operations of the injector over a set ofengine cycles of a chosen number; and for at least some engine cyclesdetermining a number of operations to be implemented by the injector ineach of the engine cycles by: calculating how many engine cycles areleft remaining in the set of cycles; by subtracting the number ofoperations already performed by the injector in engine cycles of the setfrom the calculated desired aggregate number of operations; and bydividing the result of the subtraction by the number of remaining cyclesand rounding the result to a near integer.

Without increasing the complexity or cost of the injection apparatusitself the applicant has devised a way to achieve finer control of theamount of fuel delivered to a combustion chamber in each cycle toimprove the efficiency of the engine, its fuel consumption and itsemissions.

Internal combustion engines that make use of embodiments of theinvention can do away with complicated, heavy and expensive fuelinjection timing systems. Instead, they may make use of a cheaper andsimpler system.

Further respective aspects and features of the invention are defined inthe appended claims.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the invention will now be described with reference to theaccompanying drawings, in which:

FIG. 1 schematically illustrates a first embodiment of an internalcombustion engine having a fuel injection system according to thepresent invention;

FIG. 2 schematically illustrates a second embodiment of an internalcombustion engine having a fuel injection unit according to the presentinvention;

FIG. 3 schematically illustrates the electronic controller used in thefuel injection unit of FIG. 2;

FIG. 4 schematically illustrates a fuel injector for use in the fuelinjection system of FIG. 1 or the fuel injection unit of FIG. 2;

FIG. 5 is a flowchart of a first method of operation of the enginecontrol unit illustrated in FIGS. 1 and 2; and

FIG. 6 is a flowchart of a second method of operation of the enginecontrol unit illustrated in FIGS. 1 and 2.

DETAILED DESCRIPTION

FIG. 1 illustrates an internal combustion engine 100 comprising acylinder 102 in which reciprocates a piston 104 with the piston 104 andthe cylinder 102 defining between them a combustion chamber 106. Thepiston 104 is connected by a connecting rod 108 to a crankshaft 110. Thecrankshaft 110 drives a camshaft (not shown) which in turn drives aninlet valve 112 and an exhaust valve 114. The inlet valve 112 and theexhaust value 114 are driven in timed relationship to the movement ofthe piston 104 in the cylinder 102, with return springs (not shown)biasing the valves 112, 114 back into their valve seats.

The fuel injection system of the engine 100 comprises a fuel injector116 arranged to deliver fuel 118 into an inlet passage 120 upstream ofthe inlet valve 112. A throttle valve 122 is placed in the inlet passage120 to control the flow of charge air into the inlet passage 120 and thecombustion chamber 106.

An engine control unit 124 controls the time at which the fuel 118 isinjected into the charge air present in the inlet passage 120 and alsocontrols the quantity of fuel 118 that is injected. The engine controlunit 124 receives a signal from the throttle valve 122 via a controlline 126, the signal indicating the rotational position of the throttlevalve 122 and hence the engine load. Additionally, the engine controlunit 124 receives a timing signal from a crankshaft sensor 128 (whichcould be replaced by a camshaft sensor) via a control line 130. Thecrankshaft sensor 128 is responsive to teeth 132 on the crankshaft 110and to a gap 134 in the teeth 132. The engine control unit 124 candetermine, from the timing signal received from the crankshaft sensor128, the speed of the engine 100 and the position of the piston 104within the cylinder 102, this being used to determine the timing ofopening and closing of the inlet valve 112. Having regard to the timingsignal produced by the crankshaft sensor 128 and the load signalproduced by the sensor attached to the throttle valve 122, the enginecontrol unit 124 generates a control signal which is relayed to theinjector 116 via a line 136 and controls the operation of the injector116.

FIG. 2 schematically illustrates an internal combustion engine 600having a fuel injection unit 602. The internal combustion engine 600 issimilar to the internal combustion engine 100 shown in FIG. 1.Components of the engine 600 that are the same as components of theengine 100 are given the same reference numeral and, for conciseness, adescription of them will not be repeated.

The engine 600 has a crankshaft 202, which is similar to the crankshaft110 shown in FIG. 1, except that the crankshaft 202 does not have theteeth 132 and hence does not have the gap 134.

The engine 600 also has a pressure sensor 204 for detecting the pressureof the air within the inlet passage 120. The pressure sensor 204supplies an electronic controller 206 with a pressure signal via acontrol line 208.

The electronic controller 206 determines, from the pressure signalreceived from the pressure sensor 204: (i) the engine load; (ii) theengine speed; and (iii) the timing of the opening and/or closing of theinlet valve 112. This will be described in more detail later. Inaddition, as before, the electronic controller 206 generates a controlsignal which is relayed to the injector 116 via the line 136 andcontrols operation of the injector 116.

In the engine 100 shown in FIG. 1, the engine control unit 124 uses thesignal from the crankshaft sensor 128 to determine the engine speed andthe timing of the opening and closing of the inlet valve 112. Theelectronic controller 206 determines both the engine speed and thetiming of the opening and closing of the inlet valve 112 from thepressure signal received from the pressure sensor 204 and the engine 200does not require the crankshaft sensor 128 of the engine 100 (nor thecontrol line 130). Thus the crankshaft 202 of the engine 200 is moresimply formed than the crankshaft 110 of the engine 100, i.e. thecrankshaft 200 does not need to be provided with the teeth 132 and thegap 134.

In the engine 100 shown in FIG. 1, the engine control unit 128 uses theload signal from the sensor attached to the throttle valve 122 todetermine the engine load. The electronic controller 206 determines theengine load from the pressure signal received from the pressure sensor204 and the engine 600 does not require the sensor attached to thethrottle valve 122 (nor the control line 126).

FIG. 3 schematically illustrates the electronic controller 206. Thepressure signal from the pressure sensor 204 representing the pressureof the air in the inlet passage 120 is received by the engine controlunit 206 via the control line 208. The pressure signal is then suppliedto a low pass filter 400 and a high pass filter 402. The outputs of thelow pass filter 400 and the high pass filter 402 are supplied separatelyto a processor 404. The processor 404 has access to a look-up-table 406stored in a memory 408. The processor 404 uses the output of the lowpass filter 402, the output of the high pass filter 404 and thelook-up-table 406 to generate a control signal to be supplied to theinjector 116 via the control line 136.

The processor unit 404 uses the low pass filtered pressure signal todetermine the load of the engine 200. The processor unit 404 also usesthe high pass filtered pressure signal to determine the speed of theengine 200 and the timing of the opening and closing of the inlet valve112.

FIG. 4 shows an embodiment of an injector 116. It comprises a piston1000 slideable in a housing 1001. The piston 1000 is acted upon by asolenoid 1002 and by a biasing valve spring 1003. The piston is moveableto draw fuel into and dispense fuel from a fuel chamber 1004. A one-wayinlet valve 1005 allows fuel to flow into the fuel chamber 1004 from afuel inlet 1006, while preventing flow of fuel out of the fuel chamber1004 to the fuel inlet 1006. A one-way sprung-loaded outlet valve 1007allows fuel to be dispensed from the fuel chamber 1004 to a fuel outlet1008, but prevents fuel being drawn back into the fuel chamber 1004 fromthe fuel outlet 1008.

In the operation of the fuel injector 116 the activation of the solenoid1002 moves the piston 1000 against the biasing force of the spring 1003to displace from the fuel chamber 1004 fuel via the outlet valve 1007 tothe fuel outlet 1008. Then, when the solenoid 1002 is de-energised thebiasing spring 1003 forces the piston 1000 to move to draw fuel into thefuel chamber 1004 via the inlet valve 1005. The piston 1000 has adefined piston stroke X_(p) This piston stroke is defined by setting thetravel of the piston between two end stops. By setting a definite pistontravel the amount of fuel dispensed in each dispensing operation of thefuel injector 116 can be set at a set value. Thus, whenever the solenoid1002 is operated then the fuel injector 116 dispenses a set amount offuel, i.e. a volume of fuel identical (or substantially so) in andconstant for all operations of the injector, preset and not variable bythe injector or the controller of the injector. This means that in eachengine cycle the amount of fuel dispensed by the fuel injector 116 canbe controlled by controlling the number of times that the solenoid 1002is activated during the engine cycle. Unlike pulse width modulatedinjectors, the amount of fuel delivered by the fuel injector isinsensitive to pressure variations in the intake passage 1006.

Previously it has been proposed for each engine cycle to take measuredengine speed and load and then use a look-up table to determine how manytimes in the engine cycle the injector 116 should be operated. This wasdetermined separately for each engine cycle, independently of all otherengine cycles. However, this gives only a coarse control of the amountof fuel going into the engine for combustion.

The applicant has realized that not all fuel dispensed by the injector116 prior to a combustion cycle reaches the combustion chamber and iscombusted. Instead a significant amount of fuel hangs on the walls ofthe intake passage 120. This is usually considered undesirable and sothe injector 116 is usually situated as near as possible to the back ofthe valve head of valve 112 to minimize the length of the passage 120 inwhose walls fuel can hang.

The applicant has realized that the fact that fuel hangs on walls,normally felt undesirable, can be used to advantage in the use of aninjector as described above with reference to FIG. 4. The applicant hasdesigned new control strategies to be used by the electronic controllers124 of FIGS. 1 and 206 of FIGS. 2 and 3. The strategies are illustratedby the flow charts of FIGS. 5 and 6.

Turning first to FIG. 5, as described in the previous patent GB 2425188,the controller 124 or 206 will use measured engine load and speed toaddress a look-up table at step 2000. This will give an idealized amountof fuel to be delivered by the injector 116 for a single engine cycle.This figure can be modified at 2001 to take account of factors such aschanging engine temperature, fuel temperature, atmospheric pressure,etc, although this step is optional.

The innovation of the first fuelling strategy of the present inventionis to move away from looking at a single engine cycle and to considerinstead 8 consecutive cycles. This happens at 2002, where the idealamount for one cycle is multiplied to give the total needed over 8operating cycles of the engine. Then a fuel demand (d) as a number ofoperations of the injector 116 is calculated at 2003 and this is fed onto a fuel count calculator 2004, which will be described later.

The fuel demand (d) is calculated for every cycle of the engine. At 2005it is determined (by comparing the new fuel demand with the previousfuel demand) whether the fuel demand is constant or increasing ordecreasing. This result is communicated to the fuel count calculator2004. Also if the demand is not constant, but is increasing ordecreasing then this information is fed to a reset function 2006.

A sensor 2007 either measures the rate of revolution of the engine (rpm)or in some other way notes the beginning of each new engine cycle (inthe FIG. 1 embodiment the sensor 2001 can be provided by sensor 128 andin the FIG. 2 embodiment the sensor can be provided by the sensor 204).This information is fed to a cycle counter 2008. In the illustratedembodiment the cycle counter counts sets of 8 cycles. However, this onlyhappens if the fuel demand is constant and the counter is reset to startagain at zero if the reset function 2006 dictates this. This resetfunction could be varied so that reset occurs only when the fuelling isincreasing or decreasing by more than a threshold amount. Also it may bedetermined to dispense with this reset function altogether, e.g. if itis known that the engine will be operating within acceptable variationlimits.

The cycle number (i.e. 1 to 8) is output at 2009 and at 2010 the numberof cycles remaining of a set of 8 is determined. If it is determinedthat no cycles are left then the reset function 2011 is alerted and thisthen resets the counter 2008 to zero.

The number of cycles remaining (n) is fed to the fuel count calculator2004. This calculates the fuel demand for the next engine cycle as anumber of operations of the injector 116 during the cycle. This isoutput at 2011.

The number of injector operations for 8 cycles has already beencalculated at (d) at 2003. In a steady state condition the calculatorcalculates the number of injector operations by dividing the number ofoperations left in an 8 cycle sequence (r) by the number of cyclesremaining (n) calculated at 2010. The result is rounded to the nearestinteger. The number of remaining operations (r) is calculated at 2012.Initially it will be (d) at the start of a set of 8 cycles, but it willbe decreased each cycle by the fuel demand output at 2011 by thecalculator 2004. This is why the flowchart has an arrow leading from thecalculator 2004 to the fuel count remaining calculator 2012.

The above operation will lead to the number of operations in a cyclevarying from cycle to cycle despite a constant fuel demand in all casesother than when the total fuel demand for the cycle is exactly divisibleby 8. For instance if the number of operations over 8 cycles is 70 then:

1. For the first cycle the number of operations will be determined as70/8=8.75, therefore the number of operations output at 2011 will be 9.

2. For a second cycle the number of operations will be determined as(70−9)/7=61/7=8.71, therefore again the number of operations output at2011 will be 9.

3. For a third cycle the number of operations will be determined as(70−18)/6=52/6=8.67, therefore again the number of operations output at2011 will be 9.

4. For a fourth cycle the number of operations will be determined as(70−27)/5=43/5=8.6, therefore again the number of operations output at2011 will be 9.

5. For a fifth cycle the number of operations will be determined as(70−36)/4=34/4=8.5, therefore again the number of operations output at2011 will be 9.

6. For a sixth cycle the number of operations will be determined as(70−45)/3=25/3=8.33, therefore the number of operations output at 2011will be 8.

7. For a seventh cycle the number of operations will be determined as(70−53)/2=17/2=8.5, therefore again the number of operations output at2011 will be 9.

8. For the eighth and final cycle the number of operations will bedetermined as (70−62)/1=8/1=8, therefore again the number of operationsoutput at 2011 will be 8.

By varying the number of operations stroke to stroke, the controllerachieves a finer degree of control—in effect giving steps equal to⅛^(th) of the volume of fuel dispensed by the injector. There will be nonoticeable unevenness in the running of the engine because the effect ofthe fuel ‘hanging’ on the walls serves to average the fuel delivered tothe combustion chamber in any event.

If the fuel demand increases or decreases then the set of 8 cycles canbe broken and a new set calculated; during changing demand thecalculator 2004 can suspend its normal rounding operation and alwaysround up to the nearest integer in the case of increasing demand oralways round down to the nearest integer in the case of decreasingdemand. However, this is not necessary and instead the engine couldalways look at a set of e.g. 8 cycles, regardless of varying fuel demand

Whilst the example above discusses averaging over 8 cycles, the methodcould be applied over any number of cycles from 2 to 16. Indeed, thenumber of cycles in the set considered for averaging purposes coulditself be varied with engine speed and/or load. When the engineoperation is very stable then the number of cycles for averaging couldbe 12-16 to achieve best refined performance, whilst if the operatingconditions are more variable then the number of cycles in the set couldbe 2 or 3. Selecting a low number of cycles in a set, e.g. 2 or 3, makesit easier to round the calculation of aggregated fuel demand, asdescribed above, continuously, without a need for different mode ofoperation.

FIG. 6 illustrates a second method of operation according to the presentinvention. As with the first method there is an initial step taken (at3000 in the Figure) at the beginning of each engine cycle in which adesired fuel demand is calculated based upon the measured engine speedand load at the beginning of the engine cycle. The desired amount isdetermined as a number of operations of the fuel injector, such numberbe calculated to one or two decimal places. For instance, a desired fueldemand might be 3.6 operations of the fuel injector. Obviously theinjector itself can only operate 3 times a cycle or 4 times a cycle andcannot itself operate 3.6 times a cycle.

At 3001 the fuel demand is rounded to a near decimal. For instance, a3.6 fuel demand may be rounded to 4. This is an output as a demand D.The difference between the output demand D and the input demandcalculated at 3000 is determined, in this case −0.4. This difference isoutput to 3002.

The output demand D is relayed to 3003. At 3003 the final output to theinjector is determined.

At 3004 the demand D is monitored to see whether it is constant (i.e.within predefined limits, e.g. not varying by plus or minus 2 cycles)for 3 or more cycles. If a demand has been constant for 3 or more cyclesthen a signal is sent to the box 3002 to start accumulating thedifference signals sent from box 3001. If the output is varying or hasnot been constant for at least 3 cycles then a reset signal is sent tothe box 3002 to clear the box 3002 back to zero. It may be decided todispense with step 3004 and to continuously accumulate a difference at3002, regardless of varying demand D.

The difference calculated at 3001 is accumulated at 3002. Then, at 3005it is determined whether the accumulated difference is greater than 1.If the accumulated difference is greater than 1 then one is added to thenumber D at box 3003 so that the output from 3003 is D+1.

At 3006, it is determined whether the accumulated difference at 3002 isless than −1. If the accumulated difference is less than −1 then 1 issubtracted from D at 3003 and the output to the injector is D−1.

During times of decreasing or increasing demand the rounding operationat 3001 can be varied. At 3007 it is determined whether the output D isless than, equal to or more than the immediately preceding output D. Ifthe current output is less than the preceding output D then at 3001 therounding operation is always downwards. For instance, 3.8 would berounded down to 3. If the demand D is constant then at 3001 there willbe rounding to the nearest integer. If the demand D is increasing thenat 3001 the demand is always rounded up to the nearest integer, e.g. 3.2would be rounded up to 4. This adds in an anticipation of a need for afuelling increase or a fuelling decrease in the next cycle.

The method in FIG. 6 allows an averaging to take place over a number ofengine cycles to give a total fuel delivery to the combustion chamberwhich is closer to that determined at the step 3000 than if nodifferences are accumulated in the process.

The FIG. 6 embodiment is particularly suited to operate continuously, invarying and steady state conditions.

The foregoing description of preferred embodiments for this disclosurehas been presented for purposes of illustration and description. It isnot intended to be exhaustive or to limit the disclosure to the preciseform disclosed. Obvious modifications or variations are possible inlight of the above teachings. The embodiments are chosen and describedin an effort to provide the best illustrations of the principles of thedisclosure and its practical application, and to thereby enable one ofordinary skill in the art to utilize the disclosure in variousembodiments and with various modifications as are suited to theparticular use contemplated. All such modifications and variations arewithin the scope of the disclosure as determined by the appended claimswhen interpreted in accordance with the breadth to which they arefairly, legally, and equitably entitled.

What is claimed is:
 1. A method of operating an internal combustion engine comprising the steps of: supplying fuel to charge air using an injector which in each operation delivers a set amount of fuel; controlling how much fuel is supplied to the charge air in each engine cycle by controlling how many times the injector operates in each engine cycle; determining from engine speed and load a desired fuel demand as a number of operations of the injector calculated to at least one decimal place; rounding the desired fuel demand to a near integer to provide an output fuel demand for the injector as a number of operations of the injector for the next operating cycle; and calculating an aggregated fuel demand for a plurality of engine cycles and when the calculated aggregated fuel demand is not equal to an aggregated number of operations of the injector if for each cycle of the plurality of cycles the output fuel demand is calculated independently then controlling the output fuel demands sent to the injector over the plurality of cycles to operate the injector an aggregate number of operations closer to an aggregated desired fuel demand for the plurality of cycles than if for each cycle of the plurality of output cycles the output fuel demand is calculated independently.
 2. The method of claim 1, wherein the calculated aggregate number of operations of the injector is calculated for a set of engine cycles of a chosen number using the most recently determined desired demand for a single cycle; and a number of operations to be implemented by the injector in the each engine cycle of the set is calculated by: calculating how many cycles are left remaining in the set of cycles; by subtracting the number of operations already performed by the injector in cycles of the set from the calculated desired aggregate number of operations; and by dividing the result of the subtraction by the number of remaining cycles and rounding the result to a near integer.
 3. The method of claim 2, wherein the chosen number of cycles in the set is between two and eight.
 4. The method of claim 2, further including varying the chosen number of cycles with variations in engine operation.
 5. The method of claim 1, wherein the method includes: calculating for each engine cycle a difference between the desired fuel demand and the output fuel demand; aggregating the difference over the plurality of engine cycles; when the aggregated difference is equal to or greater than one then for the next engine cycle increasing by one the output fuel demand for the injector; and when the aggregated fuel demand is equal to or less than minus one then for the next engine cycle reducing by one the output fuel demand for the injector.
 6. The method of claim 1, wherein the rounding the desired fuel demand to a near integer during operation of the engine with varying engine speed and/or load is modified depending of whether the output fuel demand has decreased or increased over preceding engine cycles; when the output fuel demand has increased then the desired fuel demand is rounded up to the nearest integer; and when the output fuel demand has decreased then the desired fuel demand is rounded down to the nearest integer.
 7. A method of operating an internal combustion engine comprising the steps of: supplying fuel to charge air using an injector which in each operation delivers a set amount of fuel; controlling how much fuel is supplied to the charge air in each engine cycle by controlling how many times the injector operates in each engine cycle; the method having first and second fuel demand calculation routines comprising: a first fuel demand calculation routine in which a desired fuel demand is determined with reference to engine speed and load for each engine cycle individually as a number of operations of the injector calculated to at least one decimal place and the desired fuel demand is rounded to a near integer to provide an output fuel demand as a number of operations of the injector for the next operating cycle; and a second fuel demand calculation routine in which a desired fuel demand is determined with reference to engine speed and load for a plurality of engine cycles as an aggregate number of operations of the injector over the plurality of the operating cycles and the injector is controlled over the plurality of engine cycles to achieve the desired fuel demand with the number of operations in at least one engine cycle of the plurality differing from the number of operations in other engine cycles of the plurality.
 8. A method of operating an internal combustion engine comprising the steps of: supplying fuel to charge air using an injector which in each operation delivers a set amount of fuel; varying fuel supply from engine cycle to engine cycle by varying the number of operations of the injector in each engine cycle; calculating a desired aggregate number of operations of the injector over a set of engine cycles of a chosen number; and determining a number of operations to be implemented by the injector in each of the engine cycles by: calculating how many engine cycles are left remaining in the set of cycles; by subtracting the number of operations already performed by the injector in engine cycles of the set from the calculated desired aggregate number of operations; and by dividing the result of the subtraction by the number of remaining engine cycles and rounding the result to a near integer.
 9. A method of operating an internal combustion engine comprising the steps of: supplying fuel to charge air using an injector which in each operation delivers a set amount of fuel; controlling how much fuel is supplied to the charge air in each engine cycle by controlling how many times the injector operates in each engine cycle; determining from engine speed and load a desired fuel demand as a number of operations of the injector calculated to at least one decimal place; rounding the desired fuel demand to a near integer to provide an output fuel demand for the injector as a number of operations of the injector for the next operating cycle; calculating for each engine cycle a difference between the desired fuel demand and the output fuel demand; aggregating the differences over a plurality of engine cycles; and when the aggregated difference is equal to or greater than one then for the next engine cycle increasing by one the output fuel demand for the injector.
 10. The method of claim 9, further comprising the step of: when the aggregated difference is equal to or less than minus one then for the next engine cycle reducing by one the output fuel demand for the injector.
 11. The method of claim 10, wherein the rounding the desired fuel demand to a near integer during operation of the engine with varying engine speed and/or load is modified depending of whether the output fuel demand has decreased or increased over preceding engine cycles; when the output fuel demand has increased then the desired fuel demand is rounded up to the nearest integer; and when the output fuel demand has decreased then the desired fuel demand is rounded down to the nearest integer.
 12. The method of claim 9, wherein the rounding the desired fuel demand to a near integer during operation of the engine with varying engine speed and/or load is modified depending of whether the output fuel demand has decreased or increased over preceding engine cycles; when the output fuel demand has increased then the desired fuel demand is rounded up to the nearest integer; and when the output fuel demand has decreased then the desired fuel demand is rounded down to the nearest integer.
 13. A method of operating an internal combustion engine comprising the steps of: supplying fuel to charge air using an injector which in each operation delivers a set amount of fuel; controlling how much fuel is supplied to the charge air in each engine cycle by controlling how many times the injector operates in each engine cycle; determining from engine speed and load a desired fuel demand as a number of operations of the injector calculated to at least one decimal place; rounding the desired fuel demand to a near integer to provide an output fuel demand for the injector as a number of operations of the injector for the next operating cycle; calculating for each engine cycle a difference between the desired fuel demand and the output fuel demand; aggregating the differences over a plurality of engine cycles; and when the aggregated difference is equal to or less than minus one then for the next engine cycle reducing by one the output fuel demand for the injector.
 14. The method of claim 11, wherein the rounding the desired fuel demand to a near integer during operation of the engine with varying engine speed and/or load is modified depending of whether the output fuel demand has decreased or increased over preceding engine cycles; when the output fuel demand has increased then the desired fuel demand is rounded up to the nearest integer; and when the output fuel demand has decreased then the desired fuel demand is rounded down to the nearest integer. 